#ifndef YGG_BUTTON_HPP
#define YGG_BUTTON_HPP

#include "rgui/Button.hpp"
#include "Rectangle.hpp"

namespace ygg
{

class Button : public rgui::Button
{
public:
							Button(const phx::vec2f &position, const phx::vec2f &size, const phx::Colorf &color, const std::wstring &text = std::wstring());

	virtual void			setColor(const rgui::Colorf &color);

	virtual void			onClick(const rgui::vec2i &cursorPosition);
	virtual void			update(const rgui::vec2i &cursorPosition);
	virtual void			render(const rgui::RenderEffect &renderEffect = rgui::RenderEffect());
	virtual void			mouseEnter();
	virtual void			mouseLeave();
	virtual void			onPressed();
	virtual void			onReleased();
private:
	ygg::Rectangle mRenderRectangle;
};

}

#endif